package com.szewec.ps.model.road.facilities.investigation.task;

import com.szewec.ps.model.Meta;
import com.szewec.ps.model.road.facilities.investigation.road.side.facilities.RoadBicycleParking;
import com.szewec.ps.model.road.facilities.investigation.road.side.facilities.RoadCrossingFacilities;
import com.szewec.ps.model.road.facilities.investigation.road.side.facilities.RoadFacilitiesBusStop;
import com.szewec.ps.model.road.facilities.investigation.road.side.facilities.RoadMetroStation;
import com.szewec.ps.model.road.facilities.investigation.road.side.facilities.RoadMetroStationGetway;
import com.szewec.ps.model.road.facilities.investigation.road.side.facilities.RoadParking;
import com.szewec.ps.model.road.facilities.investigation.road.side.facilities.RoadTollGate;
import com.szewec.ps.model.road.facilities.investigation.road.side.facilities.RoadTrafficSign;

import java.io.Serializable;
import java.util.List;

public class RoadFacilitiesInvestigationTaskDTO {
    private Meta meta;
    private String msg;
    private RoadFacilitiesTaskDTO data;
    private Integer code;

    public static class RoadFacilitiesTaskDTO implements Serializable {
        private static final long serialVersionUID = 8039919852066910939L;

        // 路段设施调查任务对象
        private RoadFacilitiesInvestigationTask facilitiesInvestigationTask;
        // 机动车道对象
        private RoadMotorway roadMotorway;
        // 交通隔离设施对象
        private RoadTrafficIsolationFacilities roadTrafficIsolationFacilities;
        // 慢行道对象
        private RoadSlowLane roadSlowLane;
        // 桥梁对象
        private RoadBridge roadBridge;
        // 隧道对象
        private RoadTunnel roadTunnel;
        // 现代轨道交通对象 轻轨
        private RoadModernUrbanTransit roadModernUrbanTransitLightRail;
        // 现代轨道交通对象 BRT
        private RoadModernUrbanTransit roadModernUrbanTransitBRT;
        // 现代轨道交通对象 有轨电车
        private RoadModernUrbanTransit roadModernUrbanTransitTram;
        // 道路沿线设施 公交站点
        private RoadFacilitiesBusStop roadFacilitiesBusStop;
        // 道路沿线设施 地铁站点
        private RoadMetroStation roadMetroStation;
        // 道路沿线设施 地铁出入口
        private RoadMetroStationGetway roadMetroStationGetway;
        // 道路沿线设施 路内停车
        private RoadParking roadParking;
        // 道路沿线设施 自行车停放点
        private RoadBicycleParking roadBicycleParking;
        // 道路沿线设施 过街设施
        private RoadCrossingFacilities roadCrossingFacilities;
        // 道路沿线设施 收费站
        private RoadTollGate roadTollGate;
        // 道路沿线设施 交通标志
        private RoadTrafficSign roadTrafficSign;
        // 现代轨道交通 附件ID
        private List<String> roadModernUrbanTransitFileIds;
        // 现代轨道交通 删除的附件ID
        private List<String> removeRoadModernUrbanTransitFileIds;
        // 道路沿线设施 附件ID
        private List<String> roadFacilitiesAlongFileIds;
        // 道路沿线设施 删除的附件ID
        private List<String> removeRoadFacilitiesAlongFileIds;


        public RoadFacilitiesInvestigationTask getFacilitiesInvestigationTask() {
            return facilitiesInvestigationTask;
        }

        public void setFacilitiesInvestigationTask(RoadFacilitiesInvestigationTask facilitiesInvestigationTask) {
            this.facilitiesInvestigationTask = facilitiesInvestigationTask;
        }

        public RoadMotorway getRoadMotorway() {
            return roadMotorway;
        }

        public void setRoadMotorway(RoadMotorway roadMotorway) {
            this.roadMotorway = roadMotorway;
        }

        public RoadTrafficIsolationFacilities getRoadTrafficIsolationFacilities() {
            return roadTrafficIsolationFacilities;
        }

        public void setRoadTrafficIsolationFacilities(RoadTrafficIsolationFacilities roadTrafficIsolationFacilities) {
            this.roadTrafficIsolationFacilities = roadTrafficIsolationFacilities;
        }

        public RoadSlowLane getRoadSlowLane() {
            return roadSlowLane;
        }

        public void setRoadSlowLane(RoadSlowLane roadSlowLane) {
            this.roadSlowLane = roadSlowLane;
        }

        public RoadBridge getRoadBridge() {
            return roadBridge;
        }

        public void setRoadBridge(RoadBridge roadBridge) {
            this.roadBridge = roadBridge;
        }

        public RoadTunnel getRoadTunnel() {
            return roadTunnel;
        }

        public void setRoadTunnel(RoadTunnel roadTunnel) {
            this.roadTunnel = roadTunnel;
        }

        public RoadModernUrbanTransit getRoadModernUrbanTransitLightRail() {
            return roadModernUrbanTransitLightRail;
        }

        public void setRoadModernUrbanTransitLightRail(RoadModernUrbanTransit roadModernUrbanTransitLightRail) {
            this.roadModernUrbanTransitLightRail = roadModernUrbanTransitLightRail;
        }

        public RoadModernUrbanTransit getRoadModernUrbanTransitBRT() {
            return roadModernUrbanTransitBRT;
        }

        public void setRoadModernUrbanTransitBRT(RoadModernUrbanTransit roadModernUrbanTransitBRT) {
            this.roadModernUrbanTransitBRT = roadModernUrbanTransitBRT;
        }

        public RoadModernUrbanTransit getRoadModernUrbanTransitTram() {
            return roadModernUrbanTransitTram;
        }

        public void setRoadModernUrbanTransitTram(RoadModernUrbanTransit roadModernUrbanTransitTram) {
            this.roadModernUrbanTransitTram = roadModernUrbanTransitTram;
        }

        public RoadFacilitiesBusStop getRoadFacilitiesBusStop() {
            return roadFacilitiesBusStop;
        }

        public void setRoadFacilitiesBusStop(RoadFacilitiesBusStop roadFacilitiesBusStop) {
            this.roadFacilitiesBusStop = roadFacilitiesBusStop;
        }

        public RoadMetroStation getRoadMetroStation() {
            return roadMetroStation;
        }

        public void setRoadMetroStation(RoadMetroStation roadMetroStation) {
            this.roadMetroStation = roadMetroStation;
        }

        public RoadMetroStationGetway getRoadMetroStationGetway() {
            return roadMetroStationGetway;
        }

        public void setRoadMetroStationGetway(RoadMetroStationGetway roadMetroStationGetway) {
            this.roadMetroStationGetway = roadMetroStationGetway;
        }

        public RoadParking getRoadParking() {
            return roadParking;
        }

        public void setRoadParking(RoadParking roadParking) {
            this.roadParking = roadParking;
        }

        public RoadBicycleParking getRoadBicycleParking() {
            return roadBicycleParking;
        }

        public void setRoadBicycleParking(RoadBicycleParking roadBicycleParking) {
            this.roadBicycleParking = roadBicycleParking;
        }

        public RoadCrossingFacilities getRoadCrossingFacilities() {
            return roadCrossingFacilities;
        }

        public void setRoadCrossingFacilities(RoadCrossingFacilities roadCrossingFacilities) {
            this.roadCrossingFacilities = roadCrossingFacilities;
        }

        public RoadTollGate getRoadTollGate() {
            return roadTollGate;
        }

        public void setRoadTollGate(RoadTollGate roadTollGate) {
            this.roadTollGate = roadTollGate;
        }

        public RoadTrafficSign getRoadTrafficSign() {
            return roadTrafficSign;
        }

        public void setRoadTrafficSign(RoadTrafficSign roadTrafficSign) {
            this.roadTrafficSign = roadTrafficSign;
        }

        public List<String> getRoadModernUrbanTransitFileIds() {
            return roadModernUrbanTransitFileIds;
        }

        public void setRoadModernUrbanTransitFileIds(List<String> roadModernUrbanTransitFileIds) {
            this.roadModernUrbanTransitFileIds = roadModernUrbanTransitFileIds;
        }

        public List<String> getRoadFacilitiesAlongFileIds() {
            return roadFacilitiesAlongFileIds;
        }

        public void setRoadFacilitiesAlongFileIds(List<String> roadFacilitiesAlongFileIds) {
            this.roadFacilitiesAlongFileIds = roadFacilitiesAlongFileIds;
        }

        public List<String> getRemoveRoadModernUrbanTransitFileIds() {
            return removeRoadModernUrbanTransitFileIds;
        }

        public void setRemoveRoadModernUrbanTransitFileIds(List<String> removeRoadModernUrbanTransitFileIds) {
            this.removeRoadModernUrbanTransitFileIds = removeRoadModernUrbanTransitFileIds;
        }

        public List<String> getRemoveRoadFacilitiesAlongFileIds() {
            return removeRoadFacilitiesAlongFileIds;
        }

        public void setRemoveRoadFacilitiesAlongFileIds(List<String> removeRoadFacilitiesAlongFileIds) {
            this.removeRoadFacilitiesAlongFileIds = removeRoadFacilitiesAlongFileIds;
        }
    }

    public Meta getMeta() {
        return meta;
    }

    public void setMeta(Meta meta) {
        this.meta = meta;
    }

    public String getMsg() {
        return msg;
    }

    public void setMsg(String msg) {
        this.msg = msg;
    }

    public RoadFacilitiesTaskDTO getData() {
        return data;
    }

    public void setData(RoadFacilitiesTaskDTO data) {
        this.data = data;
    }

    public Integer getCode() {
        return code;
    }

    public void setCode(Integer code) {
        this.code = code;
    }
}
